import { createApp } from 'vue';
import 'virtual:svg-icons-register';
import { createPinia } from 'pinia';
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate';
import './styles/input.css';
import './styles/base.scss';

import App from './App.vue';
import router from './router';

import PrimeVue from 'primevue/config';
import ToastService from 'primevue/toastservice';
import Tooltip from 'primevue/tooltip';
import ConfirmationService from 'primevue/confirmationservice';

import 'primevue/resources/themes/aura-light-green/theme.css';
import 'primeicons/primeicons.css';

import VueHighlightJS from 'vue3-highlightjs';
import 'vue3-highlightjs/styles/atom-one-dark-reasonable.css';

const app = createApp(App);
const pinia = createPinia();
pinia.use(piniaPluginPersistedstate);
app.directive('tooltip', Tooltip);
app.use(ConfirmationService);
app.use(pinia);
app.use(router);
app.use(PrimeVue);
app.use(ToastService);
app.use(VueHighlightJS);

app.mount('#app');
